If a User Equipment (UE) needs to use IMS services, the UE should implement the IMS registration. FIG. 1 is a flow chart illustrating the process of implementing initial IMS registration in the prior art. If a UE has acquired an Internet Protocol (IP) connection bearer and found an interface of the IMS system: a Proxy Call Session Control Function (P-CSCF), before the initial IMS registration is implemented. The initial IMS registration includes the following steps.
Steps 100-101: The UE sends a first Register request based on a Session Initialization Protocol (SIP) to the P-CSCF found by the UE, and forwards the first Register request to an Interrogating Call Session Control Function (I-CSCF) via the P-CSCF.
The I-CSCF is a connection point provided for all users connecting to the service provider in an (Internet service provider) ISP network. The first Register request includes an ID and home network name of the UE to be registered. The P-CSCF parses an IP address of the I-CSCF by using a home network name included in the first Register request, and forwards the first Register request to the I-CSCF corresponding to the IP address of the I-CSCF.
Steps 102-103: The I-CSCF initiates to a Home Subscriber Server (HSS) a User Authorization Request (UAR) message; and the HSS returns, according to the current registration state of the UE, the I-CSCF a User Authentication Answer (UAA) message carrying Service Call Session Control Function (S-CSCF) capabilities or an S-CSCF Name.
In the IMS network, the HSS is located in the home network, and is used for storing the data related to subscribers and services, such as subscriber IDs, subscriber registration state information, access parameters, service trigger information. The S-CSCF, which is the core of the IMS network, is located in the home network. The S-CSCF is utilized to control sessions and provide registration services for subscribers.
A user has three registration states: a not registered state that the subscriber establishes no connection with the network, a registered state, and an unregistered state that the subscriber has established a connection with the network, but has not initiated any registration procedure. According to related protocol criterions, the subscriber registration state is changed after the HSS receives a Subscriber Authentication or Cancel Request (SAR) from the S-CSCF. If the UE deregisters from the network, for example, the UE is power-off, a Subscriber Cancel Request is triggered. In response to receiving the Subscriber Cancel Request, the HSS changes the registration state of the UE stored in the HSS to the not registered state. If the UE completes the registration, a subscriber registration request is triggered. In response to receiving the subscriber registration request, the HSS changes the registration state of the UE stored in the HSS to the registered state. If the UE is called, the SAR is triggered. In response to receiving the SAR, the HSS changes the registration state of the UE stored in the HSS to the unregistered state. It can be seen that the HSS changes the registration state according to related protocol criterions, that is, the HSS learns the change of the registration state if the registration state of the UE is changed. Please refer to the related protocols for specific implementation.
According to related protocol criterions, in response to receiving the User Authorization Request/Location Inquiry Request (UAR/LIR) from the I-CSCF, the HSS inquiries about the subscriber registration information stored in the HSS, and determines, according to the current registration state of the UE, the S-CSCF Capabilities or S-CSCF Name to be returned. The HSS returns the I-CSCF the UAA message carrying the S-CSCF Capabilities, if the UE has not been allocated the S-CSCF Name, that is, the UE is in the not registered state, or the I-CSCF has not requested the S-CSCF Capabilities definitely; the HSS returns the UAA message carrying the S-CSCF Name to the I-CSCF, if the UE is in the registered state or the unregistered state, that is, the UE has been allocated the S-CSCF, the allocated S-CSCF has been stored in the HSS.
Steps 102-103 illustrate the first UAR/UAA procedure of the initial IMS registration procedure, and the UE has not completed the initial IMS registration at that time, i.e. the registration state of the UE recorded in the HSS is the not registered state; so the UAA message carrying the S-CSCF Capabilities is returned to the I-CSCF during the first UAR/UAA procedure of the initial IMS procedure.
Steps 104-105: The I-CSCF selects an S-CSCF according to the S-CSCF Capabilities carried in the UAA message, and sending the received first Register request to the selected S-CSCF.
According to related criterions of 3GPP TS 29.228 protocol and 3GPP TS 29.229 protocol, the capability set is expressed by using Attribute-Value Pairs (AVP). For the process of the I-CSCF selecting the S-CSCF according to the AVP, please refer to the related protocols, and no more description herein.
Steps 106-108: The S-CSCF sends a Multimedia Authentication Request (MAR) message to the HSS to request the authentication data of the UE; in response to generating Authentication Vectors (AVs), the HSS returns the S-CSCF a Multimedia Authentication Answer (MAA) message carrying the AVs.
The authentication of the UE depends on a pre-set share key which can be stored in an IP Multimedia Service ID Module (ISIM) of the UE and the HSS in the network. The S-CSCF needs to send the MAR message to the HSS to acquire the AVs when desiring to authenticate the subscriber, since the S-CSCF is used for authorizing subscribers.
In response to receiving the MAR message, the HSS sets a Pending Flag stored in the HSS to a Pending state, to indicate that the UE is in the authentication procedure currently, stores the S-CSCF Name of the S-CSCF selected for the UE carried in the MAR, and returns the MAA message carrying the generated AVs to the S-CSCF according to the S-CSCF Name of the S-CSCF selected for the UE.
The AVs requested by the S-CSCF from the HSS mainly includes: a random challenge (RAND), an expected result (XERS), a network authentication token (AUTN), an Integration Key (IK), and an Encrypt Key (CK).
Steps 109-113: The S-CSCF sends a 401 unauthorized response to the UE through the I-CSCF and the P-CSCF to challenge the UE; in response to completing the authentication challenge, the UE sends a second Register request carrying an authentication challenge response (RES) to the I-CSCF through the P-CSCF.
For authentication, the S-CSCF uses the 401 unauthorized response to refuse the first Register request initiated by the UE, and the 401 unauthorized response includes the AVs requested acquired from the HSS. The UE calculates the RES based on the share key stored in the local ISIM and the RAND in the received AVs, and sends the second Register request carrying the RES to the S-CSCF. Please refer to related protocols for a specific calculation method.
Steps 114-115: In response to receiving the second Register request, the I-CSCF initiates the UAR message to the HSS; the HSS returns the UAA message carrying the S-CSCF Capabilities or the S-CSCF Name to the I-CSCF according to the current subscriber registration state.
The specific implementation of the steps 114-115 is similar to that of the steps 102-103, so there is no more description.
It should be noted that, the current registration state of the UE stored in the HSS is still the not registered state, since the UE is in the initial IMS registration procedure at this time, and has not completed the registration yet. According to protocol criterions, the HSS still returns the I-CSCF the UAA message carrying the S-CSCF Capabilities, when the UE implements the second UAR/UAA procedure of the initial IMS registration procedure in the steps 114-115.
Step 116: The I-CSCF selects the S-CSCF according to the S-CSCF Capabilities carried in the UAA message, and sends the second Register request to the selected S-CSCF.
According to the steps 114-115, and step 116, since the UE has not completed the initial IMS registration, and the current registration state of the UE stored in the HSS is still the not registered state; the HSS, according to related protocol criterions, can only return the S-CSCF Capabilities to the I-CSCF by using the UAA message to carry the S-CSCF Capabilities. The I-CSCF can only re-select the S-CSCF according to the S-CSCF Capabilities carried in the UAA message. The process may bring a problem that the S-CSCF selected during the second UAR/UAA procedure may be different from the S-CSCF selected during the first UAR/UAA procedure in the steps 104-105. If the S-CSCF selected during the second UAR/UAA procedure is different from the S-CSCF selected during the first UAR/UAA procedure, the S-CSCF selected during the second UAR/UAA procedure will find no data related with the UE stored in itself, and initiate an initialization location registration process to the UE. Consequently, the UE can not implement the initial IMS registration procedure successfully if such a situation happens many times.
In step 116, the UE can continue to implement the authentication only when the S-CSCF selected by the I-CSCF according to the S-CSCF Capabilities carried in the UAA message and the S-CSCF selected in the steps 104-105 are the same.
Steps 117-119: The S-CSCF authenticates the UE according to the RES carried in the second Register request; if the UE passes the authentication, the S-CSCF sends a Subscriber Authentication Request (SAR) message to the HSS; in response to receiving the SAR message, the HSS returns a Subscriber Authentication Answer (SAA) message to the S-CSCF.
The S-CSCF compares the XRES in the AVs requested from the HSS in the steps 106-108 with the RES carried in the second Register request; if the XRES is the same as the RES, the S-CSCF determines that the UE passes the authentication; otherwise, the S-CSCF determines that the UE does not pass the authentication.
The S-CSCF Name is carried in the SAR message to notify the HSS of the S-CSCF providing services for the UE passing the authentication. In response to receiving the SAR message, the HSS changes the registration state of the UE stored in the HSS to the registered state.
Steps 120-122: The S-CSCF sends an accept registration 200 OK response to the UE through the I-CSCF and the P-CSCF, to accept the initial IMS registration initiated by the UE.
The inventors find in the inventing process that the method for implementing the initial IMS registration in the prior art has the following drawbacks: during the two UAR/UAA procedures, the subscriber registration state stored in the HSS is not changed, that is, the subscriber registration state stored in the HSS is the not registered state during the first UAR/UAA procedure, while the subscriber registration state stored in the HSS is still the not registered state during the second UAR/UAA procedure. Therefore, according to the protocol criterions, only the S-CSCF Capabilities is carried in the two UAA messages, the I-CSCF selects the S-CSCF according to the S-CSCF Capabilities, and the S-CSCF Name is not carried in the UAA message. Therefore, the I-CSCF has to re-select an S-CSCF in the second UAR/UAA procedure, and the S-CSCF re-selected by the I-CSCF is not ensured to be the same as the S-CSCF selected in the first UAR/UAA procedure. Therefore, in response to receiving the Register request, the S-CSCF re-selected by the I-CSCF may initiate an initialization location registration process to the UE for no information of the UE is found in S-CSCF re-selected by the I-CSCF. Consequently, the initial IMS registration can not be implemented successfully if such a situation happens many times.